package com.sihan.framework.etm.service.business;

import com.framework.model.ApiResult;
import com.framework.model.PageResult;
import com.sihan.framework.etm.dto.business.BaseDTO;
import com.sihan.framework.etm.dto.business.ExceptionToolAddDTO;
import com.sihan.framework.etm.dto.business.ToolOverviewDTO;
import com.sihan.framework.etm.vo.business.BaseToolInfo;
import com.sihan.framework.etm.vo.business.BorrowPlanVO;
import com.sihan.framework.etm.vo.business.ToolOverviewVO;

import java.util.List;

/**
 * @author gyz
 * @version 1.0
 * @since jdk1.8
 */
public interface CheckService {
	PageResult<ToolOverviewVO> getToolList(ToolOverviewDTO dto);

	PageResult<ToolOverviewVO> getToolCheckList(ToolOverviewDTO dto);

	void updateRemindCycle(String remindCycle);

	List<BorrowPlanVO> getCheckToolOutStatistical();

	PageResult<BaseToolInfo> getToolCheckOutList(BaseDTO dto);

	PageResult<BaseToolInfo> getToolNeedCheckList(BaseDTO dto);

	List<BorrowPlanVO> getCheckToolInStatistical();

	PageResult<BaseToolInfo> getCheckToolInList(BaseDTO dto);

	void addException(ExceptionToolAddDTO dto);
	
	/**
	 * 
	 * @description 工器具的检查
	 * @return
	 * @auther 韩兵
	 * @Date 2020年7月18日
	 * @return ApiResult
	 */
	@SuppressWarnings("rawtypes")
	ApiResult checkDoing();
	
	@SuppressWarnings("rawtypes")
	ApiResult checkDone();
	
	@SuppressWarnings("rawtypes")
	ApiResult outConfirmBorrow(String mechanismId,String inspectDate);
	
	@SuppressWarnings("rawtypes")
	ApiResult inConfirmBorrow(String checkDate);
}
